import axios from "axios";
import NProgress from "nprogress";
import "nprogress/nprogress.css"

// 创建实例对象
let instance=axios.create({
    baseURL:"https://www.XA221208.com",    //默认域名
    timeout:5000 //超时时间
})

// 请求拦截
instance.interceptors.request.use((config)=>{
    // 开启进度条
    NProgress.start();
    // 返回 请求的所有的配置信息
    return config;
})

// 响应拦截
instance.interceptors.response.use(
    (response)=>{
        // 关闭进度条
        NProgress.done();
        // 返回响应的结果
       switch(response.data.code){
        case 200:
            // 返回响应的结果
            return response.data.data;
            default: //其他结果
            return response.data
       }
    },
    (error)=>{
        // 关闭进度条
        NProgress.done();
        // 统一输出 错误信息
        console.log(error.message);
        // 1.返回一个失败状态的promise；
        return Promise.reject()

        // 2.返回一个pending状态的promise 中断promise链
        return new Promise(()=>{})
    }

)

// 暴露 instance
export default instance